1. Field of the Invention
The present invention relates to the design of electronic circuits. More specifically, the present invention relates to a method and apparatus for temporarily increasing the operating frequency of an electronic circuit beyond a maximum sustainable operating frequency.
2. Related Art
As computer system performance continues to increase at an exponential rate, circuitry within the computer systems must keep pace with ever-faster frequencies. These faster frequencies cause the circuitry to switch more often, which causes the circuitry to consume more power. As the circuitry consumes more power it produces more heat.
This heat must somehow be removed so that the temperature within the computer circuits does not exceed a maximum operating temperature. To this end, computer systems typically include a number of heat-dissipating components, such as heat sinks, cooling fans and heat pipes to dissipate thermal energy.
Unfortunately, providing these heat-dissipating components within a computer system can present a number of problems. First, these heat-dissipating components can significantly increase the volume and weight of a computer system, which is especially a problem for portable computer systems in which volume and weight must be minimized. Second, providing these heat-dissipating components can significantly increase the manufacturing cost of a computer system. Third, providing these heat-dissipating components can reduce reliability of a computer system, because components such as cooling fans, can fail. Furthermore, some of these components such as cooling fans, consume extra power and can thereby decrease battery life in a portable computer system.
In order to reduce the power consumption, many portable computer systems enter a power conservation mode whenever the computer system is not busy. During this power conservation mode, the computer system operates at a reduced frequency and voltage level to minimize the amount of power consumed by the computer system, and to thereby increase battery life. When the computer system becomes busy again, the frequency is increased to a maximum sustainable frequency. For many portable computer systems, this maximum sustainable frequency is determined by the capacity of the computer system to dissipate heat.
Note that this maximum sustainable frequency is determined by assuming that the computer system will operate continuously at this frequency. Most computer applications, however, do not perform computational work continuously. In fact, most applications tend to perform computational work for short, concentrated bursts between long idle periods when the computer system is waiting for user input. Hence, the maximum sustainable operating frequency is typically too conservative because it is based on the worst-case assumption that an application performs computational work continuously.
What is needed is a method and an apparatus for temporarily increasing the operating frequency of a computer system beyond the maximum sustainable operating frequency.
One embodiment of the present invention provides a system that facilitates temporarily increasing the operating frequency of an electronic circuit, such as a computer system, beyond a maximum sustainable operating frequency. Upon receiving a request to operate at a higher frequency, the system determines the thermal energy level of a cooling system for the circuit. If the thermal energy level is below a threshold level for the thermal capacity of the cooling system, the system increases the operating frequency of the circuit to a frequency that is greater than the maximum sustainable operating frequency for a period of limited duration. This period of limited duration is short enough to ensure that a temperature increase, caused by increasing the operating frequency, does not raise the operating temperature of the circuit above a maximum operating temperature.
In one embodiment of the present invention, the request for the higher operating frequency is received from one of: an application running on the computer system; an operating system of the computer system; or a controller that detects an increase in computational workload by monitoring a current sensor within the computer system.
In one embodiment of the present invention, determining the thermal energy level of the cooling system involves measuring a temperature of a heat sink within the cooling system.
In one embodiment of the present invention, increasing the operating frequency involves increasing the operating frequency for an allotted time.
In one embodiment of the present invention, increasing the operating frequency involves increasing the operating frequency until a command is received to reduce the operating frequency.
In one embodiment of the present invention, if the thermal energy level of the cooling system is not below the threshold value, the system increases the operating frequency to the maximum sustainable operating frequency.
In one embodiment of the present invention, increasing the operating frequency additionally involves increasing an operating voltage of the circuit for the period of limited duration.
In one embodiment of the present invention, after the period of limited duration is over, the system lowers the operating frequency of the circuit to the maximum sustainable operating frequency.
In one embodiment of the present invention, if the circuit is not busy, the system lowers the operating frequency of the circuit to a lower power-conserving frequency, whereby the lower power-conserving frequency further decreases the thermal energy of the cooling system and thereby provides a longer period of boosted frequency when needed.